package com.problem;

import java.util.*;

/**
 * https://leetcode-cn.com/problems/qiu-12n-lcof/
 */
public class SumNumbers {
    /**
     * 求 1+2+...+n ，要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句（A?B:C）。
     *
     * 示例 1：
     *
     * 输入: n = 3
     * 输出: 6
     * 示例 2：
     *
     * 输入: n = 9
     * 输出: 45
     */

    public int sumNums(int n) {
        /**
         * 数列求和 n(n+1)/2
         */
        //return ((int)Math.pow(n,2) + n) >>1;

        /**
         * 与运算的短路
         */
        int sum = 0;
        boolean b= n-1 >=0&&(sum = n +sumNums(n-1))>0;
        return sum;
    }

    public static void main(String[] args) {
        SumNumbers s = new SumNumbers();
        System.out.println(s.sumNums(8));
    }
}
